Repository navigation
feat(android): let callers choose the JDK of the APK release job - #178
Conversation
release-android-apk.yml had the JDK hard-coded, and the last Java major update moved it to 25. Gradle wrappers older than 9.1 cannot run on JDK 25, so an app that ships one could no longer be released. The workflow now takes a java_version input (default 25, unchanged behaviour) and the orchestrator passes its own java_version on to it. An app with an older Gradle wrapper passes a JDK its wrapper supports. Closes #177
|
Important Review skippedReview was skipped as selected files did not have any reviewable changes. ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configuration
📒 Files selected for processing (5)
Included review availability: This review used your included allowance. 1 included review remains after this review. Your included PR review attempts over the past 7 days set your current allowance at 3 reviews per hour. 📝 WalkthroughWalkthroughThe Android APK release workflow now accepts a caller-selected Java version. The input defaults to 25, and the calling workflow forwards its ChangesAndroid release Java version
Priority: ➖ Normal Estimated code review effort: 2 (Simple) | ~10 minutes Change: Feature · Severity of issue fixed: Medium Merge Risk: ⚪ Minimal · up to Android release callers can now select a compatible JDK, while callers omitting the input retain Java 25. No current merge-blocking risk is evident. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Independent local reviewReviewed head: Verdict: not mergeable as is — one blocking item, and it is not in the diff. The required check "Validate GitHub Actions workflows" is red on this head because its job was never picked up by a runner; no lint step ran. The change itself has no findings. Once that check has been re-run and is green on this head, the PR is safe to merge. What was checked
Blocking
Fix in PRnone Follow-up
Not covered
|
Independent local reviewReviewed head: 250c498 Verdict: mergeable This is round 2. The head is the same commit as in round 1 (one commit, no changes since). All checks on the head are now green, and the base branch has moved on without conflicting with the change. I found no blocking and no fix-in-PR items. What was checked
Status of the findings of round 1
Blockingnone Fix in PRnone Follow-upnone new. The caller-side follow-up from round 1 is tracked in the numveil repository (see above); no additional issue is needed for this review. Not covered
|
Problem
release-android-apk.ymlhad the JDK hard-coded in itsset up jdkstep, and #175 moved it to 25. Gradle wrappers older than 9.1 cannot run on JDK 25 and fail while compiling the build script. A caller had no way to choose another JDK for this job: the orchestrator'sjava_versioninput was only passed totest-and-build.ymlandpublish-maven-central.yml(#177).Change
release-android-apk.ymltakes ajava_versioninput (default25, so behaviour without the input is unchanged) and uses it foractions/setup-java.build-test-publish.ymlpasses itsjava_versioninput on to the Android release job.README.md,CLAUDE.mdand the description of the Java rule inrenovate.jsonno longer describe a separate Android pin.The input uses the same description string as the other
java_versioninputs, so the existing Renovate custom manager keeps tracking its default.Closes #177
For callers
A repository with
app_rootand a Gradle wrapper older than 9.1 has to pass ajava_versionits wrapper supports. This PR alone does not make such a repository's Android job pass again; the caller needs that input.java_versionis one input for all jobs, so a caller that also builds withtool: ./gradlewormvngets the same JDK there.Verification
actionlint .github/workflows/*.ymlpasses.renovate-config-validator --strict --no-global renovate.jsonaccepts the config.renovate.json, applied to the workflow files, find the default inrelease-android-apk.ymlnext to the three existing ones.Not covered
Summary by CodeRabbit
New Features
Documentation